﻿using System;

namespace GLDotNet.Toolkit
{
    public interface IGLWindow : IDisposable
    {
        string Title { get; set; }

        Size Size { get; set; }

        int Width { get; set; }

        int Height { get; set; }

        bool IsFullscreen { get; }

        event EventHandler Resize;

        event EventHandler<KeyEventArgs> KeyDown;

        event EventHandler<KeyEventArgs> KeyUp;

        event EventHandler<KeyPressEventArgs> KeyPress;

        event EventHandler<MouseEventArgs> MouseMove;

        event EventHandler<MouseButtonEventArgs> MouseButtonDown;

        event EventHandler<MouseButtonEventArgs> MouseButtonUp;

        event EventHandler<MouseWheelEventArgs> MouseWheel;
    }
}
